1. Field of the Invention
The present invention relates to a method for setting a motion vector of a digital video, and more particularly to a method for setting a motion vector of a digital video capable of converting a compressed digital video into a video with a low resolution.
2. Description of the Related Art
In digital video coding techniques (e.g., H.261, H.263, MPEG, etc.), a motion vector is estimated using a 16×16 luminance macroblock in which each macroblock has one motion vector.
For example, FIG. 1 illustrates a general principle of a reduction resolution process in which the width and length of the original image is downscaled in half. In this example, the resolution downscaling process is applied to each 8×8 block of a 16×16 macroblock, in which one 16×16 macroblock is downscaled to one 8×8 block.
For I-picture and P-picture elements of a digital video, the resolution is reduced as shown in FIG. 1. However, for the P-picture element, an additional process is necessary to choose a motion vector to reduce the resolution.
For example, FIG. 2 illustrates a resolution reducing technique for the P-picture element. As shown in FIG. 2, the resolution is reduced from four adjacent macroblocks (M1, M2, M3 and M4) of the P-picture element to one macroblock (N). Prior to the reduction resolution process, each macroblock (Mi) is coded in an inter coded mode and has a motion vector mvi and prediction error blocks eij (i,j=1, 2, 3, 4).
In more detail, each of the four blocks e11˜e14 of the macroblock (M1) is downscaled to one block (e1). Likewise, each of the four blocks in M2 is downscaled to one block (e2), each of the four blocks in M3 is downscaled to one block (e3), etc. Then, after the reduction resolution process, an intermediate motion vector (mvi′) allocated to each resolution-reduced prediction error block (ei) is obtained using the below equation (1):
                              mv          i          ′                =                              mv            i                    2                                    (        1        )            
where mvi is an input motion vector before the resolution process reduction and corresponds to when the width and length of the macroblock are reduced in half.
In a general video coding technique, the resolution-reduced macroblock (N) is expressed by one motion vector (mv) because one macroblock has one motion vector.
The following three methods are used to set the motion vector (mv). The first method was presented in an article “T. Shanableh and M. Ghanbari, Heterogeneous video transcoding to lower spatio-temporal resolutions and different encoding formats, IEEE Trans, Multimedia, Vol. 2, No. 2, pp. 101-110, June 2000.” In this first method, a final motion vector is calculated by averaging the intermediate motion vectors for four input motion vectors using the following equation (2):
                    mv        =                                            mv              1              ′                        +                          mv              2              ′                        +                          mv              3              ′                        +                          mv              4              ′                                4                                    (        2        )            
A second motion vector setting method was proposed in the same article, in which the final motion vector is calculated using each intermediate value for four input motion vectors. First, the intermediate vectors (mv1′, mv2′, mv3′, mv4′) are defined, and then the distances between the intermediate vectors are calculated using the below Euclidean distance equation (3):
                              d          i                =                              ∑                                          j                =                1                            ,                              j                ≠                i                                      4                    ⁢                                                                mv                i                ′                            -                              mv                j                ′                                                                                    (        3        )            
As a final motion vector (mv), a motion vector positioned nearest to every vector by comparing Euclidean distances is set.
A third motion vector setting method is called an AMVR (Adaptive Motion Vector Resampling) method proposed in the article “B. Shen, I. Sethi, and V. Bhaskaran, adaptive motion vector resampling for compressed video down-scaling, IEEE Trans. Circuits Syst. Video Technol., Vol. 9, No. 6, pp. 929-936, September 1999.” In this method, each activity is obtained through the number of DCT (Discrete Cosine Transform) coefficients (not ‘0’), for four input macroblocks and an average value of four motion vectors is obtained using the activity as a weight value for setting a final motion vector of a resolution-reduced macroblock.
However, the related art motion vector setting reducing resolution method does not accurately calculate the final motion vector of the resolution-reduced macroblock.
For example, FIG. 3 illustrates motion vectors of four adjacent macroblocks in a flat region. Even in a flat region where image characteristics do not change much, one motion vector obtained by a BMS (Block Matching Algorithm) can have a value much different from the other three motion vectors. Namely, there is a high probability that the final motion vector calculated according to the related art motion vector setting method (in which motion vectors are simply added and then divided by 4 to calculate a final motion vector or an average value is used as the final motion vector) would have a quite different value from the existing motion vector of FIG. 3. Thus, the picture quality of the finally resolution-reduced image is degraded.
The above-noted articles are all incorporated by reference in their entirety.